from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能


class 主动技能(主动技能):
    涂毒倍率 = 1.0

    def 基础百分比(self, 类型, 等级):
        temp = super().基础百分比(类型, 等级)
        if 类型 == '中毒':
            temp += super().基础百分比('涂毒', 等级) * self.涂毒倍率
        return temp


class 技能0(被动技能):
    名称 = '基础精通'
    倍率 = 1.0
    所在等级 = 1
    等级上限 = 200
    关联技能 = ['天罗地网']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(self.倍率 * (0.463 + 0.089 * self.等级), 5)


class 技能1(主动技能):
    名称 = '抛沙'
    所在等级 = 10
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [15, 154]
    data0 = [int(i) for i in [0, 635, 712, 790, 865, 941, 1020, 1096, 1173, 1252, 1325, 1403, 1480, 1557, 1633, 1711, 1784, 1862, 1937, 2014, 2091, 2168, 2245, 2322, 2400, 2477, 2554, 2630, 2705, 2781, 2859, 2937, 3013, 3089,
                              3167, 3245, 3321, 3399, 3472, 3551, 3627, 3706, 3782, 3855, 3933, 4008, 4085, 4163, 4237, 4315, 4392, 4469, 4547, 4624, 4701, 4776, 4855, 4930, 5007, 5084, 5160, 5235, 5312, 5391, 5466, 5541, 5618, 5698, 5773, 5850, 5928]]
    hit0 = 1
    涂毒data0 = [int(i) for i in [0, 63, 74, 80, 86, 94, 104, 110, 116, 125, 132, 140, 148, 155, 164, 173, 179, 186, 192, 202, 208, 217, 226, 233, 241, 248, 255, 264, 270, 277, 286, 293, 301, 307,
                                318, 324, 332, 340, 347, 355, 362, 371, 380, 386, 394, 399, 409, 416, 423, 432, 441, 448, 456, 463, 471, 477, 484, 494, 501, 508, 514, 525, 532, 539, 546, 554, 562, 570, 576, 587, 593]]
    涂毒hit0 = 1
    CD = 3.0
    TP成长 = 0.10
    TP上限 = 7

    # 双重投掷伤害减少仅适用于抛沙(直伤)
    def 双重投掷(self, 等级):
        self.hit0 *= 1+0.30+0.02*等级
        self.涂毒hit0 *= 2


class 技能2(主动技能):
    名称 = '擒月炎'
    备注 = '3异常(满)'
    所在等级 = 15
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [30, 280]
    data0 = [int(i) for i in [0, 676, 738, 801, 866, 927, 995, 1059, 1119, 1179, 1244, 1309, 1371, 1434, 1499, 1561, 1626, 1692, 1751, 1815, 1877, 1939, 2000, 2069, 2133, 2195, 2258, 2323, 2383, 2448, 2513, 2577, 2638, 2701,
                              2760, 2826, 2890, 2957, 3016, 3084, 3145, 3208, 3272, 3332, 3393, 3459, 3522, 3583, 3651, 3717, 3717, 3837, 3898, 3960, 4025, 4089, 4151, 4212, 4276, 4341, 4403, 4470, 4530, 4594, 4657, 4718, 4783, 4843, 4911, 4971, 5037]]
    power0 = 1.6
    hit0 = 1
    data1 = [int(i) for i in [0, 1555, 1695, 1843, 1990, 2133, 2284, 2434, 2573, 2715, 2863, 3008, 3151, 3298, 3451, 3591, 3741, 3886, 4028, 4175, 4317, 4458, 4604, 4758, 4906, 5047, 5194, 5340, 5481, 5627, 5782, 5923, 6065, 6215, 6355,
                              6501, 6649, 6796, 6934, 7089, 7239, 7378, 7524, 7669, 7808, 7955, 8104, 8243, 8397, 8543, 8543, 8821, 8969, 9109, 9258, 9403, 9544, 9692, 9834, 9987, 10128, 10278, 10417, 10564, 10711, 10853, 10998, 11140, 11294, 11436, 11582]]
    power1 = 1.6
    hit1 = 1
    涂毒data0 = [int(i) for i in [0, 67, 73, 79, 86, 95, 100, 106, 111, 116, 124, 131, 138, 143, 151, 156, 163, 169, 176, 182, 189, 193, 200, 206, 215, 221, 227, 230, 237, 246, 253, 259, 263, 269,
                                275, 282, 289, 295, 301, 308, 314, 320, 328, 333, 340, 346, 352, 357, 366, 372, 372, 384, 391, 396, 404, 411, 416, 421, 427, 432, 441, 448, 454, 460, 464, 471, 477, 487, 490, 497, 501]]
    涂毒power0 = 1.6
    涂毒hit0 = 1
    涂毒data1 = [int(i) for i in [0, 155, 169, 187, 200, 215, 229, 246, 259, 271, 286, 301, 314, 331, 344, 359, 372, 388, 404, 417, 432, 447, 462, 476, 490, 503, 520, 535, 548, 562, 578, 591, 607, 621,
                                638, 651, 666, 679, 694, 711, 724, 738, 753, 766, 782, 794, 808, 825, 840, 855, 855, 883, 898, 911, 927, 940, 953, 970, 983, 998, 1013, 1027, 1043, 1056, 1072, 1086, 1099, 1114, 1131, 1144, 1158]]
    涂毒power1 = 1.6
    涂毒hit1 = 1
    CD = 5.5
    TP成长 = 0.10
    TP上限 = 7


class 技能3(主动技能):
    名称 = '毒影针'
    所在等级 = 20
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [50, 420]
    data0 = [int(i) for i in [0, 1046, 1152, 1258, 1365, 1471, 1577, 1683, 1788, 1893, 2000, 2105, 2212, 2318, 2424, 2530, 2638, 2743, 2849, 2956, 3063, 3168, 3273, 3381, 3486, 3592, 3698, 3803, 3909, 4015, 4124, 4229, 4335, 4441,
                              4547, 4655, 4760, 4865, 4973, 5078, 5184, 5289, 5398, 5504, 5609, 5716, 5821, 5926, 6033, 6139, 6245, 6351, 6456, 6564, 6669, 6776, 6883, 6988, 7096, 7201, 7307, 7414, 7519, 7625, 7731, 7836, 7942, 8047, 8156, 8261, 8366]]
    hit0 = 1
    中毒data0 = [int(i) for i in [0, 1016, 1116, 1221, 1324, 1426, 1530, 1633, 1735, 1839, 1942, 2046, 2147, 2251, 2352, 2455, 2560, 2663, 2766, 2870, 2972, 3075, 3178, 3280, 3383, 3486, 3590, 3691, 3796, 3898, 4003, 4105, 4208, 4312,
                                4412, 4517, 4618, 4723, 4826, 4928, 5033, 5134, 5239, 5340, 5443, 5547, 5649, 5753, 5855, 5960, 6061, 6165, 6268, 6371, 6474, 6577, 6679, 6782, 6885, 6988, 7092, 7196, 7299, 7400, 7504, 7606, 7709, 7812, 7916, 8018, 8121]]
    中毒hit0 = 1
    出血data0 = [int(i) for i in [0, 1016, 1116, 1221, 1324, 1426, 1530, 1633, 1735, 1839, 1942, 2046, 2147, 2251, 2352, 2455, 2560, 2663, 2766, 2870, 2972, 3075, 3178, 3280, 3383, 3486, 3590, 3691, 3796, 3898, 4003, 4105, 4208, 4312,
                                4412, 4517, 4618, 4723, 4826, 4928, 5033, 5134, 5239, 5340, 5443, 5547, 5649, 5753, 5855, 5960, 6061, 6165, 6268, 6371, 6474, 6577, 6679, 6782, 6885, 6988, 7092, 7196, 7299, 7400, 7504, 7606, 7709, 7812, 7916, 8018, 8121]]
    出血hit0 = 1
    涂毒data0 = [int(i) for i in [0, 307, 339, 369, 400, 433, 463, 494, 525, 557, 588, 618, 651, 682, 713, 744, 776, 807, 837, 869, 899, 931, 961, 995, 1024, 1057, 1088, 1120, 1151, 1179, 1213, 1242, 1275, 1305, 1338, 1368,
                                1401, 1431, 1464, 1492, 1523, 1556, 1586, 1619, 1649, 1682, 1712, 1741, 1775, 1804, 1836, 1867, 1899, 1930, 1960, 1993, 2025, 2054, 2084, 2119, 2148, 2180, 2211, 2243, 2274, 2303, 2337, 2366, 2398, 2428, 2461]]
    涂毒hit0 = 1
    CD = 6.0
    TP成长 = 0.10
    TP上限 = 7


class 技能4(主动技能):
    名称 = '双重投掷'
    所在等级 = 20
    等级上限 = 30
    学习间隔 = 3
    等级精通 = 20
    是否有伤害 = 0
    关联技能 = ['无']
    MP = [194, 1840]


class 技能5(主动技能):
    名称 = '砖袭'
    所在等级 = 25
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [50, 420]
    data0 = [int(i) for i in [0, 2007, 2211, 2416, 2618, 2824, 3028, 3230, 3435, 3639, 3843, 4047, 4249, 4455, 4656, 4860, 5066, 5268, 5474, 5677, 5881, 6085, 6286, 6493, 6697, 6901, 7103, 7309, 7510, 7714, 7918, 8122, 8326, 8530, 8735, 8937,
                              9142, 9346, 9549, 9752, 9956, 10162, 10362, 10568, 10773, 10976, 11179, 11383, 11588, 11790, 11995, 12200, 12403, 12606, 12810, 13015, 13216, 13420, 13625, 13828, 14031, 14236, 14441, 14643, 14848, 15051, 15255, 15458, 15662, 15868, 16069]]
    hit0 = 1
    data1 = [int(i) for i in [0, 1374, 1512, 1652, 1790, 1930, 2071, 2209, 2349, 2490, 2628, 2767, 2908, 3046, 3186, 3326, 3464, 3603, 3745, 3883, 4022, 4162, 4300, 4441, 4581, 4719, 4859, 5000, 5137, 5276, 5416, 5555, 5696, 5836, 5974,
                              6113, 6253, 6391, 6532, 6673, 6811, 6949, 7090, 7228, 7367, 7508, 7647, 7787, 7927, 8065, 8204, 8344, 8481, 8624, 8764, 8901, 9040, 9181, 9319, 9459, 9599, 9739, 9878, 10018, 10156, 10294, 10437, 10574, 10714, 10854, 10992]]
    hit1 = 1
    涂毒data0 = [int(i) for i in [0, 199, 221, 241, 261, 282, 303, 323, 341, 362, 385, 404, 423, 443, 465, 486, 506, 526, 548, 566, 586, 610, 627, 647, 668, 689, 710, 729, 751, 771, 791, 810, 833, 854, 872, 892,
                                915, 934, 954, 974, 997, 1014, 1034, 1058, 1077, 1096, 1116, 1139, 1158, 1177, 1199, 1221, 1240, 1260, 1280, 1302, 1320, 1340, 1363, 1382, 1402, 1422, 1445, 1464, 1484, 1505, 1526, 1543, 1565, 1588, 1605]]
    涂毒hit0 = 1
    涂毒data1 = [int(i) for i in [0, 137, 151, 165, 178, 191, 204, 221, 235, 250, 261, 276, 289, 303, 317, 334, 346, 360, 374, 387, 401, 413, 429, 443, 459, 472, 486, 498, 512, 526, 541, 554, 567, 584,
                                597, 611, 624, 638, 652, 666, 679, 695, 709, 722, 736, 751, 764, 778, 791, 804, 820, 833, 848, 861, 876, 889, 903, 916, 931, 945, 960, 973, 987, 1001, 1013, 1027, 1041, 1058, 1072, 1085, 1098]]
    涂毒hit1 = 1
    CD = 6.0
    TP成长 = 0.10
    TP上限 = 7


class 技能6(被动技能):
    名称 = '爪精通'
    所在等级 = 25
    等级上限 = 30
    学习间隔 = 3
    等级精通 = 20
    关联技能 = ['无']

    def 物理攻击力倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.21 + 0.01 * self.等级, 5)

    def 魔法攻击力倍率(self, 武器类型):
        return self.物理攻击力倍率(武器类型)


class 技能9(主动技能):
    名称 = '伏虎霸王拳'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    data0 = [int(i*1.085*1.1879) for i in [0, 532, 587, 641, 695, 749, 803, 857, 911, 965, 1020, 1073, 1128, 1181, 1236, 1289, 1344, 1398, 1452, 1506, 1560, 1614, 1668, 1722, 1777, 1830, 1885, 1938, 1993, 2046, 2101, 2155, 2209, 2263, 2317, 2371,
                                           2426, 2479, 2534, 2587, 2642, 2695, 2750, 2804, 2858, 2913, 2967, 3021, 3075, 3129, 3184, 3237, 3292, 3345, 3400, 3453, 3508, 3562, 3616, 3670, 3724, 3778, 3833, 3886, 3941, 3994, 4049, 4102, 4157, 4211, 4265]]
    power0 = 1.6
    涂毒data0 = [int(i*1.085*1.1865) for i in [0, 53, 58, 64, 69, 75, 80, 85, 90, 96, 101, 107, 112, 118, 123, 129, 134, 139, 144, 150, 155, 161, 166, 172, 177, 183, 188, 193, 198, 204, 209, 215, 221, 226, 231, 237,
                                             243, 247, 252, 258, 264, 269, 274, 280, 286, 291, 296, 301, 307, 312, 317, 323, 329, 334, 339, 345, 351, 355, 360, 366, 372, 377, 382, 389, 394, 399, 404, 410, 415, 420, 425]]
    涂毒power0 = 1.6
    涂毒hit0 = 1.0

    CD = 15.0
    TP上限 = 5
    TP数据 = [0, 9.29, 10.14, 10.98, 11.83, 12.67]

    MP = [80, 672]
    无色消耗 = 0

    def TP加成(self):
        return self.TP数据[self.TP等级]


class 技能7(主动技能):
    名称 = '天罗地网'
    所在等级 = 35
    等级上限 = 11
    学习间隔 = 3
    等级精通 = 1
    data0 = [int(i*1.085*1.1878) for i in [0, 1257, 1257, 1257, 1257,
                                           1257, 1257, 1257, 1257, 1257, 1257, 1257]]
    涂毒data0 = [int(i*1.085*1.189) for i in [0, 127, 127, 127,
                                            127, 127, 127, 127, 127, 127, 127, 127]]
    涂毒hit0 = 1.0
    CD = 11
    TP成长 = 0.10
    TP上限 = 5
    MP = [180, 180]
    无色消耗 = 0


class 技能8(主动技能):
    名称 = '挑衅'
    所在等级 = 35
    等级上限 = 20
    学习间隔 = 3
    等级精通 = 10
    是否有伤害 = 0
    关联技能 = ['所有']

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.05 + 0.02 * self.等级, 5)


# 点狂·霸王拳TP时
# 可抓取的话就是基础8hit，每多1tp+1hit；但不受到狂·霸王拳额外倍率加成
# 数据都用伏虎霸王拳的data
# 不点狂·霸王拳TP时
# 可抓取用伏虎霸王拳的data，8hit；不可抓取用狂·霸王拳的data，hit1
class 技能9(主动技能):
    名称 = '伏虎霸王拳'
    所在等级 = 30
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60
    MP = [80, 672]
    data0 = [int(i) for i in [0, 686, 756, 826, 896, 966, 1035, 1105, 1174, 1243, 1315, 1383, 1454, 1522, 1593, 1661, 1733, 1802, 1872, 1941, 2011, 2080, 2149, 2220, 2290, 2359, 2429, 2498, 2568, 2637, 2708, 2778, 2847, 2916,
                              2986, 3056, 3127, 3195, 3266, 3334, 3405, 3473, 3545, 3614, 3684, 3754, 3824, 3894, 3964, 4033, 4103, 4172, 4243, 4312, 4382, 4451, 4521, 4591, 4660, 4731, 4800, 4869, 4940, 5008, 5080, 5147, 5219, 5287, 5358, 5427, 5497]]
    hit0 = 1
    power0 = 1.6
    涂毒data0 = [int(i) for i in [0, 68, 75, 82, 89, 97, 103, 110, 116, 124, 130, 138, 144, 152, 158, 166, 173, 179, 186, 193, 200, 207, 214, 221, 228, 235, 242, 248, 255, 263, 269, 277, 285, 291,
                                297, 306, 314, 318, 324, 332, 341, 347, 353, 361, 369, 375, 382, 388, 396, 403, 409, 417, 424, 431, 437, 445, 452, 458, 464, 472, 480, 486, 493, 501, 508, 514, 521, 528, 535, 541, 548]]
    涂毒hit0 = 1
    涂毒power0 = 1.6
    CD = 15.0
    TP上限 = 5
    TP数据 = [0, 9.29, 10.14, 10.98, 11.83, 12.67]

    def TP加成(self):
        return self.TP数据[self.TP等级]


class 技能10(被动技能):
    名称 = '狂·霸王拳'
    所在等级 = 40
    等级上限 = 11
    学习间隔 = 3
    等级精通 = 1
    关联技能 = ['伏虎霸王拳']

    # 不点狂·霸王拳TP时,不可抓取用狂·霸王拳的data
    #data0 = [int(i) for i in [0, 6411, 6595, 6778, 6962, 7147, 7331, 7516, 7698, 7883, 8067, 8251]]
    #hit0 = 1
    #涂毒data0 = [int(i) for i in [0, 572, 585, 597, 610, 624, 638, 651, 661, 675, 687, 701]]
    #涂毒hit0 = 1

    def 技能描述(self, 武器类型):
        temp = ''
        temp += '加成倍率：' + \
            str(round(round(1.40 + 0.02 * self.等级, 5)*100-100, 2)) + '%<br>'
        temp += '关联技能:伏虎霸王拳'
        return temp

    def 加成倍率(self, 武器类型):
        return round(1.40 + 0.02 * self.等级, 5)


class 技能11(主动技能):
    名称 = '裂地飞沙'
    所在等级 = 35
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i) for i in [0, 10275, 11319, 12360, 13401, 14444, 15487, 16529, 17572, 18612, 19657, 20699, 21740, 22785, 23826, 24867, 25910, 26952, 27994, 29036, 30077, 31122, 32164, 33205, 34246, 35290, 36332, 37375, 38418, 39458, 40502, 41544, 42587, 43630,
                              44671, 45714, 46756, 47799, 48842, 49883, 50924, 51968, 53011, 54054, 55094, 56136, 57181, 58222, 59264, 60305, 61349, 62391, 63433, 64477, 65519, 66560, 67602, 68648, 69688, 70731, 71775, 72817, 73859, 74900, 75942, 76985, 78027, 79068, 80111, 81154, 82195]]
    hit0 = 1
    涂毒data0 = [int(i) for i in [0, 1027, 1132, 1236, 1339, 1445, 1548, 1654, 1756, 1861, 1965, 2071, 2175, 2279, 2384, 2487, 2591, 2695, 2799, 2902, 3009, 3112, 3217, 3319, 3424, 3528, 3631, 3736, 3840, 3944, 4049, 4153, 4259, 4362,
                                4466, 4570, 4674, 4779, 4883, 4987, 5092, 5197, 5300, 5404, 5510, 5613, 5717, 5822, 5925, 6029, 6134, 6240, 6345, 6447, 6552, 6655, 6761, 6864, 6968, 7072, 7178, 7281, 7387, 7490, 7595, 7697, 7802, 7907, 8011, 8115, 8219]]
    涂毒hit0 = 1.0
    CD = 20.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [200, 1820]
    无色消耗 = 1

    形态 = ["不可抓取", "可抓取"]

    def 形态变更(self, 形态, char):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "不可抓取":
            self.power0 = 1.2
            self.power1 = 1.2
        if 形态 == "可抓取":
            self.power0 = 1.0
            self.power1 = 1.0

    def 装备护石(self):
        self.倍率 *= 1.36


class 技能12(主动技能):
    名称 = '毒雷引爆'
    所在等级 = 40
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    data0 = [int(i*(1392/1100)) for i in [0, 1100, 1211, 1322, 1433, 1546, 1658, 1767, 1882, 1991, 2104, 2216, 2327, 2438, 2552, 2662, 2773, 2884, 2997, 3104, 3219, 3329, 3441, 3553, 3664, 3776, 3888, 3998, 4109, 4223, 4333, 4445, 4555,
                                          4668, 4779, 4891, 5002, 5116, 5226, 5337, 5449, 5562, 5672, 5785, 5897, 6008, 6118, 6230, 6341, 6455, 6564, 6676, 6788, 6900, 7011, 7124, 7235, 7345, 7458, 7570, 7681, 7792, 7902, 8016, 8127, 8238, 8351, 8463, 8574, 8687, 8796]]
    hit0 = 7
    中毒data0 = [int(i*(597/406)) for i in [0, 406, 448, 489, 528, 573, 612, 655, 698, 736, 779, 819, 863, 901, 943, 985, 1024, 1069, 1108, 1150, 1192, 1231, 1275, 1314, 1357, 1396, 1440, 1481, 1520, 1565, 1604, 1647, 1688, 1729,
                                          1770, 1811, 1853, 1893, 1936, 1977, 2018, 2060, 2103, 2143, 2183, 2225, 2265, 2306, 2349, 2389, 2431, 2474, 2513, 2556, 2596, 2637, 2679, 2719, 2761, 2801, 2845, 2886, 2926, 2969, 3009, 3050, 3091, 3133, 3175, 3217, 3257]]
    中毒hit0 = 7
    涂毒data0 = [int(i*(199/189)) for i in [0, 189, 207, 226, 250, 267, 285, 306, 324, 344, 362, 384, 403, 421, 441, 461, 480, 498, 519, 539, 558, 577, 596, 617, 635, 655, 675, 693, 715, 733, 752, 771, 789, 812, 831,
                                          850, 869, 889, 907, 927, 946, 966, 987, 1005, 1024, 1043, 1063, 1083, 1101, 1121, 1144, 1161, 1180, 1200, 1218, 1237, 1260, 1278, 1297, 1315, 1338, 1356, 1373, 1395, 1415, 1433, 1452, 1470, 1492, 1511, 1530]]
    涂毒hit0 = 7
    CD = 24.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [180, 1512]
    无色消耗 = 1

    def 装备护石(self):
        self.倍率 *= 1.16
        self.CDR *= 0.90


class 技能13(主动技能):
    名称 = '街头风暴'
    所在等级 = 45
    等级上限 = 70
    学习间隔 = 2
    等级精通 = 60

    # 原普通物品数据，改版后为多段部分数据
    data0 = [int(i*(198/481)) for i in [0, 481, 528, 576, 626, 673, 723, 773, 820, 870, 918, 967, 1014, 1064, 1111, 1161, 1211, 1260, 1311, 1355, 1406, 1453, 1503, 1554, 1599, 1649, 1700, 1748, 1796, 1845, 1894, 1941, 1991, 2038,
                                        2088, 2137, 2185, 2236, 2283, 2332, 2379, 2429, 2478, 2526, 2576, 2621, 2673, 2720, 2771, 2820, 2867, 2918, 2964, 3013, 3062, 3113, 3162, 3208, 3259, 3304, 3356, 3404, 3451, 3502, 3548, 3601, 3648, 3697, 3748, 3794, 3843]]
    hit0 = 25
    # 原特殊物品数据，改版后不存在，这里借用为爆炸部分数据
    data1 = [int(i*(17472/954)) for i in [0, 954, 1051, 1149, 1246, 1341, 1438, 1537, 1634, 1731, 1828, 1925, 2020, 2118, 2214, 2312, 2411, 2506, 2602, 2697, 2797, 2895, 2991, 3086, 3183, 3280, 3379, 3474, 3572, 3671, 3766, 3862, 3959,
                                          4057, 4153, 4250, 4349, 4444, 4542, 4638, 4736, 4832, 4930, 5027, 5121, 5217, 5319, 5415, 5511, 5607, 5704, 5801, 5897, 5994, 6091, 6188, 6286, 6382, 6480, 6576, 6674, 6770, 6868, 6964, 7061, 7159, 7255, 7352, 7451, 7547, 7641]]
    hit1 = 1
    # 灼伤异常
    灼伤data0 = [int(i*(1642/2374)) for i in [0, 2374, 2617, 2857, 3097, 3339, 3578, 3821, 4061, 4301, 4543, 4785, 5026, 5267, 5505, 5748, 5988, 6231, 6471, 6712, 6952, 7194, 7434, 7675, 7917, 8158, 8398, 8640, 8882, 9122, 9364, 9604, 9843, 10086, 10328, 10567,
                                            10809, 11046, 11289, 11531, 11773, 12012, 12255, 12496, 12737, 12977, 13220, 13461, 13701, 13939, 14183, 14424, 14663, 14904, 15146, 15387, 15626, 15868, 16111, 16352, 16591, 16832, 17075, 17317, 17555, 17797, 18039, 18277, 18519, 18760, 19002]]
    灼伤hit0 = 1
    # 原普通物品涂毒数据，改版后为多段部分涂毒数据
    涂毒data0 = [int(i*(16/47)) for i in [0, 47, 51, 55, 63, 66, 72, 77, 81, 87, 92, 95, 101, 107, 111, 114, 119, 125, 131, 135, 140, 145, 151, 155, 159, 164, 169, 176, 178, 184, 189, 193, 200, 202,
                                        207, 213, 218, 224, 229, 231, 237, 243, 247, 254, 257, 263, 267, 271, 277, 281, 284, 291, 296, 299, 305, 311, 316, 322, 324, 330, 336, 341, 345, 349, 353, 359, 365, 369, 374, 378, 383]]
    涂毒hit0 = 25
    涂毒power0 = 1
    # 原特殊物品涂毒数据，改版后不存在，这里借用为爆炸部分涂毒数据
    涂毒data1 = [int(i*(1970/95)) for i in [0, 95, 105, 113, 125, 133, 141, 153, 164, 173, 182, 192, 201, 210, 219, 231, 238, 250, 260, 269, 278, 289, 299, 308, 317, 329, 340, 345, 357, 366, 376, 384,
                                          395, 407, 413, 424, 435, 444, 454, 463, 473, 482, 493, 502, 511, 520, 532, 541, 551, 560, 570, 582, 588, 597, 610, 618, 628, 638, 647, 655, 666, 678, 687, 694, 706, 716, 724, 735, 745, 754, 764]]
    涂毒hit1 = 1
    CD = 45.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [450, 3780]
    无色消耗 = 2

    形态 = ["满", "秒C"]

    def 形态变更(self, 形态, char):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "满":
            self.hit0 = 25
            self.hit1 = 1
            self.中毒hit0 = 1
            self.涂毒hit0 = 25
            self.涂毒hit1 = 1
        if 形态 == "秒C":
            self.hit0 = 2
            self.hit1 = 1
            self.中毒hit0 = 1
            self.涂毒hit0 = 2
            self.涂毒hit1 = 1

    def 装备护石(self):
        self.倍率 *= 1.31

    # 双重投掷伤害减少仅适用于扔垃圾部分
    def 双重投掷(self, 等级):
        self.power0 *= 1+0.49+0.01*等级
        self.涂毒power0 *= 2


class 技能14(被动技能):
    名称 = '猛毒之血'
    所在等级 = 48
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.035 + 0.015 * self.等级, 5)


class 技能15(主动技能):
    名称 = '死亡毒雾'
    所在等级 = 50
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    data0 = [int(i) for i in [0, 11705, 14446, 17191, 19941, 22681, 25424, 28171, 30912, 33647, 36396, 39141, 41882, 44627, 47372, 50115, 52860, 55598, 58348, 61081, 63831, 66579, 69321, 72064, 74804, 77546, 80285, 83037, 85777, 88525, 91265, 94010, 96758, 99503, 102241, 104980, 107723,
                              110471, 113221, 115956, 118703, 121446, 124187, 126940, 129675, 132424, 135165, 137908, 140650, 143398, 146143, 148883, 151628, 154363, 157106, 159858, 162596, 165344, 168087, 170829, 173579, 176320, 179060, 181800, 184548, 187287, 190038, 192781, 195520, 198271, 201011]]
    hit0 = 4
    # 中毒的持续时间为2s；每0.5shit跳为面板/4;跳满为33
    # 和常规不同的是，死亡毒雾的机制是刷新当前中毒的持续时间；常规的话多hit中毒叠加，中毒数字是会不断上升的
    # 但死亡毒雾机制因为是不断刷新范围内中毒的这个状态的刷新时间，所以伤害数字恒定。
    中毒data0 = [int((i/4)) for i in [0, 789, 972, 1154, 1339, 1521, 1702, 1887, 2070, 2254, 2437, 2618, 2803, 2985, 3166, 3354, 3535, 3717, 3901, 4082, 4265, 4450, 4633, 4816, 4999, 5180, 5365, 5548, 5730, 5913, 6096, 6280, 6463, 6646, 6829,
                                    7010, 7192, 7379, 7561, 7743, 7926, 8109, 8293, 8476, 8658, 8843, 9025, 9207, 9392, 9574, 9755, 9940, 10123, 10306, 10491, 10672, 10855, 11038, 11219, 11407, 11588, 11770, 11953, 12135, 12318, 12502, 12686, 12869, 13051, 13233, 13418]]
    中毒hit0 = 33
    涂毒data0 = [int(i) for i in [0, 1176, 1452, 1723, 1995, 2269, 2544, 2820, 3090, 3366, 3639, 3907, 4183, 4455, 4731, 5004, 5276, 5552, 5820, 6096, 6369, 6639, 6915, 7190, 7464, 7736, 8007, 8283, 8558, 8829, 9102, 9378, 9648, 9921, 10194, 10469,
                                10745, 11015, 11291, 11564, 11832, 12108, 12381, 12655, 12929, 13202, 13478, 13746, 14018, 14294, 14565, 14841, 15115, 15389, 15662, 15932, 16208, 16483, 16751, 17027, 17302, 17573, 17846, 18118, 18394, 18670, 18941, 19213, 19489, 19757, 20032]]
    涂毒hit0 = 1
    力智 = [0, 0, 0, 0, 0, 0, 130, 137, 143, 150, 156, 163, 169, 176, 182, 189, 195, 202, 208, 215, 221, 228, 234, 241, 247, 254, 260, 267, 273, 280, 286, 293, 299, 306, 312, 319,
          325, 332, 338, 345, 351, 358, 364, 371, 377, 384, 390, 397, 403, 410, 416, 423, 429, 436, 442, 449, 455, 462, 468, 475, 481, 488, 494, 501, 507, 514, 520, 527, 533, 540, 546]
    防御 = [0, 0, 0, 1699, 1916, 2144, 2382, 2634, 2896, 3172, 3458, 3757, 4066, 4390, 4724, 5069, 5428, 5797, 6178, 6570, 6976, 7393, 7821, 8262, 8714, 9178, 9654, 10141, 10641, 11153, 11675, 12210, 12758, 13316, 13885, 14469, 15063, 15669,
          16286, 16917, 17558, 18210, 18876, 19553, 20241, 20942, 21654, 22378, 23114, 23862, 24384, 22959, 23447, 23934, 24421, 24908, 25396, 25882, 26369, 26857, 27343, 27830, 28318, 28804, 29292, 29779, 30267, 30753, 31240, 31728, 32214]
    CD = 145

    MP = [900, 7560]
    无色消耗 = 5

    形态 = ["满", "x20", "x15", "x10", "buff"]
    buff = False
    temp = {}

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "buff":
            if self.buff:
                self.buff = False
                char.固定防御减少(-self.temp['减防'])
                char.基础属性加成(力智=-self.temp['力智'])
            else:
                self.buff = True
                self.temp['减防'] = self.防御减少()
                self.temp['力智'] = self.力智加成()
                char.固定防御减少(self.temp['减防'])
                char.基础属性加成(力智=self.temp['力智'])
            char.伤害指数计算()
            self.hit0 = 0.0
            self.中毒hit0 = 0.0
            self.涂毒hit0 = 0.0
        elif 形态 == "满":
            self.hit0 = 4
            self.中毒hit0 = 33
            self.涂毒hit0 = 1
        elif 形态 == "x20":
            self.hit0 = 4
            self.中毒hit0 = 20
            self.涂毒hit0 = 1
        elif 形态 == "x15":
            self.hit0 = 4
            self.中毒hit0 = 15
            self.涂毒hit0 = 1
        elif 形态 == "x10":
            self.hit0 = 4
            self.中毒hit0 = 10
            self.涂毒hit0 = 1

    def 力智加成(self):
        return self.力智[self.等级]

    def 防御减少(self):
        return self.防御[self.等级]

    def 技能描述(self, 武器类型):
        temp = '力量/智力+' + str(self.力智加成())
        temp += '<br>防御减少:' + str(self.防御减少())
        return temp


class 技能16(主动技能):
    名称 = '猛毒擒月炎'
    备注 = '3异常(满)'
    所在等级 = 60
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i) for i in [0, 2230, 2459, 2684, 2910, 3137, 3364, 3590, 3815, 4041, 4267, 4495, 4721, 4948, 5177, 5401, 5627, 5854, 6079, 6307, 6534, 6760, 6986, 7211, 7438, 7663, 7891, 8117, 8345, 8570, 8796, 9023, 9251, 9474, 9701, 9930, 10157,
                              10382, 10608, 10834, 11060, 11286, 11514, 11740, 11966, 12192, 12419, 12646, 12871, 13097, 13324, 13553, 13778, 14004, 14232, 14458, 14683, 14910, 15135, 15364, 15589, 15816, 16041, 16267, 16495, 16721, 16946, 17172, 17402, 17628, 17853]]
    hit0 = 1
    power0 = 1.6
    data1 = [int(i) for i in [0, 9975, 10990, 12000, 13012, 14026, 15036, 16049, 17063, 18075, 19086, 20100, 21113, 22123, 23135, 24147, 25159, 26171, 27185, 28194, 29207, 30221, 31232, 32244, 33257, 34269, 35281, 36292, 37304, 38316, 39329, 40342, 41352, 42366,
                              43378, 44390, 45402, 46415, 47428, 48441, 49451, 50462, 51477, 52488, 53499, 54514, 55525, 56536, 57551, 58561, 59573, 60586, 61597, 62611, 63621, 64635, 65645, 66659, 67671, 68682, 69694, 70708, 71719, 72731, 73743, 74755, 75767, 76779, 77791, 78805, 79817]]
    hit1 = 1
    power0 = 1.6
    中毒data0 = [int(i) for i in [0, 1930, 2128, 2323, 2520, 2716, 2911, 3106, 3305, 3501, 3697, 3891, 4089, 4285, 4480, 4676, 4875, 5068, 5264, 5462, 5656, 5851, 6048, 6243, 6441, 6637, 6831, 7028, 7224, 7421, 7617, 7812, 8009, 8204, 8400, 8596,
                                8795, 8989, 9185, 9382, 9577, 9773, 9968, 10163, 10361, 10556, 10753, 10948, 11145, 11342, 11536, 11734, 11930, 12127, 12320, 12518, 12715, 12910, 13106, 13301, 13496, 13693, 13889, 14087, 14281, 14476, 14674, 14871, 15066, 15262, 15458]]
    中毒hit0 = 1.0
    中毒power0 = 1.6
    涂毒data0 = [int(i) for i in [0, 221, 245, 267, 291, 314, 336, 359, 382, 400, 424, 450, 472, 494, 519, 540, 561, 585, 608, 630, 654, 676, 700, 720, 742, 765, 788, 812, 832, 857, 879, 904, 923, 946, 969, 993, 1014,
                                1038, 1060, 1084, 1106, 1125, 1149, 1175, 1197, 1218, 1241, 1266, 1286, 1310, 1332, 1355, 1378, 1402, 1421, 1444, 1468, 1488, 1512, 1537, 1557, 1581, 1605, 1629, 1648, 1670, 1694, 1715, 1739, 1762, 1785]]
    涂毒hit0 = 1.0
    涂毒power0 = 1.6
    涂毒data1 = [int(i) for i in [0, 1190, 1312, 1431, 1554, 1674, 1794, 1915, 2037, 2156, 2279, 2399, 2518, 2643, 2761, 2882, 3004, 3124, 3242, 3367, 3486, 3605, 3729, 3850, 3969, 4092, 4210, 4331, 4454, 4573, 4695, 4817, 4936, 5057,
                                5178, 5299, 5418, 5541, 5663, 5781, 5903, 6025, 6144, 6266, 6386, 6506, 6628, 6749, 6869, 6991, 7112, 7229, 7352, 7473, 7593, 7715, 7837, 7957, 8078, 8198, 8320, 8440, 8561, 8682, 8802, 8923, 9045, 9165, 9288, 9407, 9527]]
    涂毒hit1 = 1.0
    涂毒power1 = 1.6
    CD = 30.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [280, 784]
    无色消耗 = 1

    def 装备护石(self):
        self.倍率 *= 1.15
        self.power0 = 1+(0.2+0.05)*3  # 异常增伤
        self.power1 = 1+(0.2+0.05)*3  # 异常增伤
        self.中毒power0 = 1+(0.2+0.05)*3  # 异常增伤
        self.涂毒power0 = 1+(0.2+0.05)*3  # 异常增伤
        self.涂毒power1 = 1+(0.2+0.05)*3  # 异常增伤
        self.CDR *= 0.80


class 技能17(主动技能):
    名称 = '爆碎砖袭'
    所在等级 = 70
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    # 冲击波攻击力
    data0 = [int(i) for i in [0, 4509, 4968, 5425, 5882, 6339, 6796, 7255, 7712, 8169, 8626, 9084, 9543, 9999, 10457, 10912, 11370, 11829, 12285, 12743, 13199, 13658, 14116, 14573, 15031,
                              15488, 15946, 16404, 16861, 17320, 17777, 18233, 18692, 19149, 19607, 20064, 20520, 20977, 21435, 21893, 22351, 22807, 23266, 23722, 24180, 24638, 25096, 25553, 26010, 26467, 26926]]
    hit0 = 1
    # 砖块攻击力
    data1 = [int(i) for i in [0, 2254, 2484, 2713, 2940, 3169, 3397, 3626, 3855, 4084, 4314, 4542, 4771, 5000, 5229, 5455, 5684, 5912, 6141, 6370, 6600, 6829, 7057, 7286, 7515,
                              7743, 7971, 8199, 8428, 8658, 8887, 9116, 9344, 9573, 9802, 10031, 10261, 10489, 10718, 10947, 11176, 11404, 11632, 11861, 12091, 12320, 12549, 12776, 13005, 13234, 13463]]
    hit1 = 2
    # 砖块爆炸攻击力
    data2 = [int(i) for i in [0, 1350, 1488, 1625, 1762, 1899, 2035, 2173, 2311, 2449, 2586, 2722, 2857, 2995, 3133, 3270, 3408, 3543, 3680, 3818, 3955, 4093, 4230, 4366,
                              4504, 4639, 4777, 4915, 5053, 5188, 5327, 5464, 5601, 5739, 5876, 6012, 6150, 6284, 6423, 6561, 6698, 6833, 6972, 7111, 7246, 7382, 7520, 7657, 7794, 7931, 8068]]
    hit2 = 4
    # 最后爆炸攻击力
    data3 = [int(i) for i in [0, 9933, 10941, 11949, 12956, 13966, 14974, 15982, 16988, 17996, 19003, 20013, 21021, 22028, 23036, 24043, 25052, 26060, 27069, 28074, 29082, 30091, 31098, 32106,
                              33113, 34121, 35128, 36138, 37146, 38154, 39161, 40168, 41178, 42185, 43193, 44200, 45209, 46216, 47224, 48232, 49242, 50249, 51255, 52263, 53270, 54278, 55285, 56294, 57301, 58310, 59318]]
    hit3 = 1
    # 冲击波攻击力
    涂毒data0 = [int(i) for i in [0, 451, 497, 541, 589, 634, 679, 726, 770, 818, 863, 908, 956, 1000, 1046, 1092, 1135, 1182, 1226, 1274, 1320, 1364, 1411, 1455, 1503,
                                1548, 1593, 1641, 1683, 1732, 1777, 1822, 1869, 1913, 1961, 2007, 2050, 2098, 2142, 2188, 2236, 2279, 2326, 2371, 2417, 2465, 2509, 2555, 2600, 2647, 2693]]
    涂毒hit0 = 1
    # 砖块攻击力
    涂毒data1 = [int(i) for i in [0, 225, 247, 269, 293, 317, 339, 361, 385, 407, 431, 455, 475, 499, 522, 545, 569, 590, 612, 636, 660, 681, 704, 728, 751,
                                774, 797, 819, 842, 865, 889, 911, 933, 957, 979, 1003, 1026, 1047, 1071, 1095, 1116, 1140, 1162, 1185, 1209, 1231, 1254, 1276, 1300, 1324, 1345]]
    涂毒hit1 = 2
    # 砖块爆炸攻击力
    涂毒data2 = [int(i) for i in [0, 133, 149, 161, 177, 189, 204, 217, 230, 246, 257, 272, 284, 298, 314, 326, 339, 354, 368, 382, 395, 410, 422,
                                436, 448, 464, 476, 490, 505, 520, 534, 545, 560, 574, 587, 601, 612, 628, 641, 654, 669, 681, 698, 711, 725, 739, 751, 765, 778, 792, 807]]
    涂毒hit2 = 4
    # 最后爆炸攻击力
    涂毒data3 = [int(i) for i in [0, 992, 1093, 1195, 1294, 1395, 1497, 1598, 1698, 1799, 1899, 2001, 2102, 2201, 2305, 2402, 2505, 2605, 2707, 2808, 2907, 3008, 3110, 3209,
                                3309, 3411, 3512, 3614, 3714, 3816, 3915, 4017, 4115, 4217, 4319, 4418, 4520, 4621, 4722, 4823, 4925, 5025, 5124, 5224, 5327, 5426, 5527, 5629, 5729, 5830, 5932]]
    涂毒hit3 = 1
    CD = 50.0
    TP成长 = 0.10
    TP上限 = 5
    是否有护石 = 1

    MP = [800, 1680]
    无色消耗 = 2

    def 装备护石(self):
        self.hit0 = 1
        self.hit1 = 0
        self.hit2 = 1
        self.power2 = 15
        self.hit3 = 0
        self.涂毒hit0 = 1
        self.涂毒hit1 = 0
        self.涂毒hit2 = 1
        self.涂毒power2 = 15
        self.涂毒hit3 = 0
        self.倍率 *= 1.18


class 技能18(主动技能):
    名称 = '连环毒爆弹'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i) for i in [0, 26743, 29454, 32169, 34883, 37594, 40308, 43019, 45735, 48449, 51160, 53875, 56586, 59301, 62011, 64726, 67439, 70152, 72866, 75578, 78293, 81004, 83718, 86431, 89143, 91857,
                              94568, 97282, 99997, 102709, 105423, 108134, 110849, 113560, 116274, 118987, 121700, 124414, 127126, 129841, 132552, 135267, 137981, 140691, 143406, 146117, 148832, 151545, 154257, 156972, 159684]]
    hit0 = 1
    data1 = [int(i) for i in [0, 11442, 12606, 13766, 14929, 16087, 17250, 18409, 19572, 20732, 21894, 23055, 24217, 25376, 26540, 27699, 28861, 30021, 31183, 32343, 33507, 34666, 35828, 36988,
                              38150, 39308, 40473, 41633, 42795, 43954, 45116, 46276, 47439, 48597, 49761, 50921, 52083, 53243, 54406, 55564, 56728, 57887, 59049, 60210, 61373, 62531, 63695, 64854, 66016, 67176, 68338]]
    hit1 = 1
    中毒data0 = [int(i) for i in [0, 894, 985, 1075, 1167, 1260, 1350, 1441, 1532, 1621, 1714, 1805, 1894, 1986, 2075, 2168, 2258, 2348, 2438, 2530, 2621, 2715, 2804, 2895,
                                2985, 3075, 3168, 3257, 3348, 3438, 3530, 3622, 3712, 3803, 3893, 3983, 4075, 4169, 4258, 4349, 4439, 4530, 4621, 4711, 4803, 4893, 4983, 5075, 5166, 5257, 5347]]
    中毒hit0 = 1
    涂毒data0 = [int(i) for i in [0, 2673, 2943, 3216, 3488, 3760, 4030, 4301, 4573, 4845, 5115, 5385, 5657, 5931, 6201, 6472, 6743, 7015, 7285, 7557, 7829, 8100, 8372, 8643, 8913, 9185,
                                9457, 9727, 9999, 10272, 10542, 10812, 11085, 11356, 11627, 11897, 12168, 12442, 12714, 12983, 13254, 13526, 13798, 14068, 14339, 14611, 14884, 15153, 15425, 15697, 15967]]
    涂毒hit0 = 1
    涂毒data1 = [int(i) for i in [0, 1233, 1357, 1483, 1609, 1734, 1859, 1983, 2110, 2235, 2359, 2485, 2609, 2735, 2860, 2988, 3112, 3237, 3362, 3487, 3611, 3738, 3863, 3988,
                                4113, 4238, 4364, 4490, 4616, 4740, 4864, 4990, 5115, 5239, 5363, 5490, 5615, 5741, 5864, 5989, 6116, 6241, 6367, 6490, 6615, 6742, 6867, 6994, 7119, 7242, 7368]]
    涂毒hit1 = 1
    CD = 40.0
    是否有护石 = 1

    MP = [580, 4500]
    无色消耗 = 3

    形态 = ["秘制毒爆弹(点被动)", "原版(不点被动)"]

    def 形态变更(self, 形态, char):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "秘制毒爆弹(点被动)":
            self.power0 = 1.5
            self.power1 = 1.4
            self.中毒power0 = 1.4
            self.涂毒power0 = 1.4
            self.涂毒power1 = 1.4
        if 形态 == "原版(不点被动)":
            self.power0 = 1
            self.power1 = 1
            self.中毒power0 = 1
            self.涂毒power0 = 1
            self.涂毒power1 = 1

    def 装备护石(self):
        self.倍率 *= 1.33
        self.CDR *= 0.9


class 技能19(被动技能):
    名称 = '猛毒之伤'
    所在等级 = 75
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.16 + 0.02 * self.等级, 5)


class 技能20(主动技能):
    名称 = '毒龙轰天雷'
    所在等级 = 80
    等级上限 = 50
    学习间隔 = 2
    等级精通 = 40

    data0 = [int(i) for i in [0, 8931, 9837, 10744, 11649, 12553, 13461, 14366, 15274, 16178, 17085, 17991, 18896, 19801, 20710, 21615, 22521, 23426, 24333, 25239, 26144, 27049, 27958, 28863, 29769, 30675, 31581, 32487, 33392, 34298, 35206, 36111, 37018, 37923,
                              38829, 39735, 40641, 41546, 42454, 43360, 44266, 45171, 46077, 46985, 47889, 48794, 49703, 50608, 51514, 52419, 53326, 54233, 55138, 56042, 56952, 57855, 58763, 59666, 60577, 61480, 62386, 63291, 64199, 65103, 66012, 66915, 67824, 68728, 69635, 70539, 71447]]
    hit0 = 1
    data1 = [int(i) for i in [0, 8566, 9432, 10305, 11172, 12041, 12910, 13781, 14649, 15519, 16387, 17258, 18124, 18994, 19862, 20732, 21600, 22473, 23341, 24207, 25078, 25946, 26815, 27684, 28554, 29423, 30291, 31160, 32029, 32898, 33768, 34636, 35506, 36374,
                              37245, 38114, 38981, 39850, 40721, 41589, 42458, 43327, 44195, 45065, 45933, 46803, 47672, 48542, 49411, 50278, 51147, 52017, 52887, 53756, 54623, 55494, 56361, 57233, 58100, 58969, 59838, 60709, 61577, 62447, 63315, 64183, 65053, 65920, 66790, 67661, 68530]]
    hit1 = 5
    data2 = [int(i) for i in [0, 540, 597, 652, 706, 762, 817, 872, 927, 982, 1037, 1093, 1148, 1203, 1258, 1312, 1368, 1422, 1478, 1531, 1588, 1644, 1699, 1750, 1809, 1864, 1916, 1971, 2029, 2085, 2137, 2192, 2248, 2303, 2358,
                              2412, 2468, 2523, 2577, 2632, 2689, 2743, 2798, 2854, 2910, 2963, 3020, 3074, 3130, 3183, 3239, 3294, 3349, 3405, 3457, 3514, 3570, 3625, 3678, 3733, 3791, 3844, 3898, 3954, 4009, 4064, 4120, 4174, 4229, 4286, 4339]]
    hit2 = 10
    中毒data0 = [int(i) for i in [0, 360, 398, 436, 471, 507, 544, 580, 617, 655, 691, 728, 763, 802, 839, 876, 911, 949, 983, 1022, 1058, 1096, 1132, 1170, 1204, 1242, 1278, 1315, 1353, 1388, 1425, 1460, 1497, 1534, 1573,
                                1609, 1645, 1681, 1719, 1756, 1794, 1829, 1865, 1900, 1939, 1976, 2013, 2051, 2086, 2121, 2160, 2196, 2234, 2269, 2307, 2341, 2378, 2416, 2453, 2490, 2526, 2563, 2599, 2638, 2672, 2709, 2745, 2782, 2819, 2858, 2894]]
    中毒hit0 = 10
    涂毒data0 = [int(i) for i in [0, 892, 983, 1073, 1165, 1253, 1346, 1437, 1527, 1616, 1709, 1798, 1887, 1978, 2071, 2161, 2250, 2341, 2434, 2523, 2613, 2704, 2797, 2886, 2975, 3066, 3160, 3246, 3337, 3429, 3521, 3609, 3701, 3792,
                                3883, 3972, 4063, 4154, 4247, 4335, 4425, 4516, 4608, 4697, 4788, 4878, 4969, 5059, 5152, 5239, 5333, 5423, 5513, 5603, 5695, 5785, 5874, 5964, 6059, 6148, 6237, 6328, 6420, 6509, 6599, 6690, 6783, 6872, 6962, 7054, 7145]]
    涂毒hit0 = 1
    涂毒data1 = [int(i) for i in [0, 1035, 1143, 1246, 1354, 1458, 1563, 1668, 1774, 1880, 1984, 2091, 2193, 2299, 2404, 2511, 2614, 2720, 2824, 2932, 3036, 3143, 3246, 3353, 3456, 3564, 3667, 3774, 3877, 3984, 4088, 4195, 4299, 4405,
                                4509, 4616, 4720, 4827, 4932, 5037, 5141, 5248, 5353, 5458, 5562, 5667, 5774, 5879, 5984, 6088, 6192, 6300, 6405, 6509, 6616, 6720, 6826, 6931, 7037, 7143, 7247, 7352, 7457, 7564, 7668, 7773, 7877, 7985, 8089, 8194, 8298]]
    涂毒hit1 = 5
    CD = 45.0
    是否有护石 = 1

    MP = [800, 6000]
    无色消耗 = 5

    def 装备护石(self):
        self.倍率 *= 1.33


class 技能21(主动技能):
    名称 = '万毒噬心诀'
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    关联技能 = ['所有']

    # 平x第一下
    data0 = [int(i*0.93) for i in [2466, 2860, 3256, 3650, 4044, 4440, 4834, 5229, 5624, 6017, 6413, 6807, 7201, 7597, 7991, 8386, 8781, 9175, 9570, 9965, 10360, 10755, 11148, 11542, 11938,
                                   12333, 12727, 13122, 13516, 13912, 14307, 14701, 15097, 15489, 15882, 16280, 16674, 17067, 17464, 17856, 18253, 18648, 19041, 19438, 19831, 20224, 20622, 21014, 21409, 21804]]
    hit0 = 1
    # 平x第二下
    data1 = [int(i*0.93) for i in [2714, 3157, 3600, 4044, 4489, 4933, 5376, 5821, 6265, 6707, 7151, 7597, 8041, 8484, 8928, 9373, 9816, 10262, 10705, 11148, 11593, 12036, 12481, 12925,
                                   13369, 13813, 14256, 14701, 15143, 15589, 16033, 16477, 16921, 17363, 17808, 18253, 18697, 19140, 19584, 20028, 20472, 20917, 21360, 21804, 22248, 22692, 23137, 23580, 24024, 24468]]
    hit1 = 1
    # 平x第三下
    data2 = [int(i*0.93) for i in [2960, 3355, 3750, 4144, 4539, 4933, 5327, 5722, 6117, 6512, 6906, 7301, 7696, 8091, 8484, 8881, 9273, 9667, 10062, 10457, 10852, 11249, 11641, 12036,
                                   12431, 12826, 13221, 13615, 14008, 14403, 14799, 15193, 15589, 15982, 16377, 16773, 17167, 17562, 17957, 18350, 18747, 19140, 19534, 19930, 20324, 20718, 21114, 21508, 21904, 22298]]
    hit2 = 1
    # 平x第四下
    data3 = [int(i*0.93) for i in [3452, 3947, 4440, 4933, 5426, 5920, 6413, 6906, 7399, 7893, 8386, 8881, 9373, 9867, 10360, 10852, 11347, 11840, 12333, 12826, 13319, 13813, 14307, 14799,
                                   15293, 15786, 16280, 16773, 17267, 17759, 18253, 18747, 19240, 19732, 20224, 20718, 21212, 21705, 22198, 22692, 23185, 23679, 24172, 24666, 25159, 25653, 26146, 26640, 27133, 27626]]
    hit3 = 0
    # 平x第五下
    data4 = [int(i*0.93) for i in [4933, 5426, 5920, 6413, 6906, 7399, 7893, 8386, 8881, 9373, 9867, 10360, 10852, 11347, 11840, 12333, 12826, 13319, 13813, 14307, 14799, 15293, 15786, 16280,
                                   16773, 17267, 17759, 18253, 18747, 19240, 19732, 20224, 20718, 21212, 21705, 22198, 22692, 23185, 23679, 24172, 24666, 25159, 25653, 26146, 26640, 27133, 27626, 28119, 28614, 29106]]
    hit4 = 0
    # 前冲
    data5 = [int(i*0.93) for i in [5920, 6413, 6906, 7399, 7893, 8386, 8881, 9373, 9867, 10360, 10852, 11347, 11840, 12333, 12826, 13319, 13813, 14307, 14799, 15293, 15786, 16280, 16773, 17267,
                                   17759, 18253, 18747, 19240, 19732, 20224, 20718, 21212, 21705, 22198, 22692, 23185, 23679, 24172, 24666, 25159, 25653, 26146, 26640, 27133, 27626, 28119, 28614, 29106, 29600, 30092]]
    hit5 = 0
    # 跳跃攻击
    data6 = [int(i*0.93) for i in [7893, 8681, 9472, 10262, 11049, 11840, 12628, 13417, 14207, 14996, 15786, 16576, 17363, 18154, 18943, 19732, 20522, 21312, 22100, 22889, 23679, 24468, 25258,
                                   26047, 26836, 27626, 28415, 29203, 29993, 30781, 31574, 32361, 33149, 33940, 34730, 35517, 36307, 37097, 37886, 38675, 39465, 40255, 41043, 41832, 42622, 43413, 44199, 44990, 45780, 46569]]
    hit6 = 0
    # 平x第一下
    涂毒data0 = [int(i*0.93) for i in [247, 285, 326, 365, 404, 444, 483, 522, 561, 600, 641, 680, 719, 760, 799, 839, 879, 917, 957, 995, 1036, 1074, 1115, 1153,
                                     1192, 1234, 1273, 1312, 1351, 1392, 1431, 1470, 1509, 1548, 1587, 1628, 1667, 1706, 1746, 1785, 1823, 1865, 1903, 1943, 1982, 2024, 2062, 2103, 2141, 2180]]
    涂毒hit0 = 1
    # 平x第二下
    涂毒data1 = [int(i*0.93) for i in [272, 317, 359, 404, 447, 493, 537, 580, 626, 669, 714, 760, 803, 847, 893, 936, 982, 1025, 1070, 1115, 1159, 1203, 1248, 1292,
                                     1337, 1381, 1426, 1470, 1515, 1559, 1603, 1647, 1692, 1736, 1780, 1823, 1869, 1914, 1957, 2002, 2048, 2091, 2137, 2180, 2224, 2269, 2312, 2358, 2401, 2446]]
    涂毒hit1 = 1
    # 平x第三下
    涂毒data2 = [int(i*0.93) for i in [297, 335, 375, 413, 454, 493, 533, 572, 611, 651, 689, 730, 769, 808, 847, 888, 928, 967, 1006, 1045, 1083, 1125, 1163, 1203,
                                     1242, 1282, 1320, 1363, 1401, 1440, 1481, 1520, 1559, 1598, 1637, 1676, 1714, 1757, 1795, 1835, 1874, 1914, 1953, 1993, 2032, 2070, 2112, 2150, 2191, 2229]]
    涂毒hit2 = 1
    # 平x第四下
    涂毒data3 = [int(i*0.93) for i in [345, 394, 444, 493, 543, 591, 641, 689, 740, 790, 839, 888, 936, 986, 1036, 1083, 1134, 1184, 1234, 1282, 1330, 1381, 1431, 1481,
                                     1530, 1578, 1628, 1676, 1726, 1776, 1823, 1874, 1924, 1974, 2024, 2070, 2121, 2171, 2220, 2269, 2316, 2367, 2417, 2466, 2516, 2564, 2615, 2664, 2714, 2763]]
    涂毒hit3 = 0
    # 平x第五下
    涂毒data4 = [int(i*0.93) for i in [493, 543, 591, 641, 689, 740, 790, 839, 888, 936, 986, 1036, 1083, 1134, 1184, 1234, 1282, 1330, 1381, 1431, 1481, 1530, 1578,
                                     1628, 1676, 1726, 1776, 1823, 1874, 1924, 1974, 2024, 2070, 2121, 2171, 2220, 2269, 2316, 2367, 2417, 2466, 2516, 2564, 2615, 2664, 2714, 2763, 2810, 2860, 2910]]
    涂毒hit4 = 0
    # 前冲
    涂毒data5 = [int(i*0.93) for i in [591, 641, 689, 740, 790, 839, 888, 936, 986, 1036, 1083, 1134, 1184, 1234, 1282, 1330, 1381, 1431, 1481, 1530, 1578, 1628, 1676,
                                     1726, 1776, 1823, 1874, 1924, 1974, 2024, 2070, 2121, 2171, 2220, 2269, 2316, 2367, 2417, 2466, 2516, 2564, 2615, 2664, 2714, 2763, 2810, 2860, 2910, 2960, 3010]]
    涂毒hit5 = 0
    # 跳跃攻击
    涂毒data6 = [int(i*0.93) for i in [790, 870, 948, 1025, 1103, 1184, 1262, 1341, 1420, 1501, 1578, 1656, 1736, 1814, 1893, 1974, 2052, 2132, 2209, 2287, 2367, 2446, 2526,
                                     2605, 2683, 2763, 2841, 2919, 2999, 3077, 3157, 3237, 3316, 3394, 3472, 3551, 3629, 3710, 3788, 3867, 3947, 4025, 4102, 4182, 4261, 4341, 4419, 4499, 4579, 4657]]
    涂毒hit6 = 0
    CD = 60

    MP = [2445, 34577]
    无色消耗 = 10

    形态 = ["x3", "x4", "x5", "前冲攻击", "跳跃攻击"]

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "x3":
            self.hit0 = 1
            self.hit1 = 1
            self.hit2 = 1
            self.hit3 = 0
            self.hit4 = 0
            self.hit5 = 0
            self.hit6 = 0
            self.涂毒hit0 = 1
            self.涂毒hit1 = 1
            self.涂毒hit2 = 1
            self.涂毒hit3 = 0
            self.涂毒hit4 = 0
            self.涂毒hit5 = 0
            self.涂毒hit6 = 0
        elif 形态 == "x4":
            self.hit0 = 1
            self.hit1 = 1
            self.hit2 = 1
            self.hit3 = 1
            self.hit4 = 0
            self.hit5 = 0
            self.hit6 = 0
            self.涂毒hit0 = 1
            self.涂毒hit1 = 1
            self.涂毒hit2 = 1
            self.涂毒hit3 = 1
            self.涂毒hit4 = 0
            self.涂毒hit5 = 0
            self.涂毒hit6 = 0
        elif 形态 == "x5":
            self.hit0 = 1
            self.hit1 = 1
            self.hit2 = 1
            self.hit3 = 1
            self.hit4 = 1
            self.hit5 = 0
            self.hit6 = 0
            self.涂毒hit0 = 1
            self.涂毒hit1 = 1
            self.涂毒hit2 = 1
            self.涂毒hit3 = 1
            self.涂毒hit4 = 1
            self.涂毒hit5 = 0
            self.涂毒hit6 = 0
        elif 形态 == "前冲攻击":
            self.hit0 = 0
            self.hit1 = 0
            self.hit2 = 0
            self.hit3 = 0
            self.hit4 = 0
            self.hit5 = 1
            self.hit6 = 0
            self.涂毒hit0 = 0
            self.涂毒hit1 = 0
            self.涂毒hit2 = 0
            self.涂毒hit3 = 0
            self.涂毒hit4 = 0
            self.涂毒hit5 = 1
            self.涂毒hit6 = 0
        elif 形态 == "跳跃攻击":
            self.hit0 = 0
            self.hit1 = 0
            self.hit2 = 0
            self.hit3 = 0
            self.hit4 = 0
            self.hit5 = 0
            self.hit6 = 1
            self.涂毒hit0 = 0
            self.涂毒hit1 = 0
            self.涂毒hit2 = 0
            self.涂毒hit3 = 0
            self.涂毒hit4 = 0
            self.涂毒hit5 = 0
            self.涂毒hit6 = 1

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.00 + 0.02 * self.等级, 5)


class 技能22(主动技能):
    名称 = '禁技：万毒蛇窟'
    所在等级 = 85
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40
    MP = [1900, 1900]
    data0 = [int(i) for i in [0, 11651, 14352, 17054, 19754, 22457, 25157, 27858, 30562, 33263, 35967, 38665, 41368, 44069, 46773, 49471, 52175, 54874, 57578, 60280, 62981, 65685, 68384, 71086, 73790,
                              76489, 79191, 81893, 84593, 87295, 89997, 92698, 95402, 98101, 100803, 103507, 106206, 108908, 111610, 114311, 117012, 119715, 122418, 125120, 127821, 130522, 133225, 135924, 138626, 141329, 144029]]
    hit0 = 8
    涂毒data0 = [int(i) for i in [0, 1164, 1434, 1707, 1978, 2247, 2516, 2784, 3055, 3328, 3596, 3867, 4137, 4406, 4677, 4948, 5220, 5488, 5758, 6029, 6297, 6569, 6838, 7110, 7380,
                                7649, 7917, 8188, 8461, 8729, 9001, 9271, 9539, 9811, 10080, 10351, 10622, 10890, 11160, 11430, 11702, 11973, 12243, 12513, 12781, 13053, 13323, 13592, 13863, 14131, 14402]]
    涂毒hit0 = 8
    CD = 180.0


class 技能23(主动技能):
    名称 = '钻心毒爆'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    # 直伤(命中敌人)
    data0 = [int(i) for i in [0, 37442, 41241, 45039, 48838, 52637, 56435, 60234, 64032, 67832, 71631, 75429, 79228, 83026, 86825, 90624, 94422, 98221, 102019, 105818, 109616,
                              113415, 117214, 121012, 124811, 128609, 132408, 136207, 140005, 143804, 147603, 151400, 155198, 158997, 162797, 166595, 170394, 174192, 177991, 181790, 185588]]
    hit0 = 1
    # 直伤(地面冲击波)
    data1 = [int(i) for i in [0, 44544, 49064, 53583, 58102, 62621, 67139, 71659, 76178, 80697, 85216, 89735, 94254, 98774, 103292, 107811, 112330, 116849, 121368, 125887,
                              130407, 134925, 139445, 143963, 148482, 153002, 157520, 162040, 166558, 171078, 175597, 180115, 184636, 189153, 193674, 198193, 202712, 207231, 211749, 216269, 220788]]
    hit1 = 0
    # 直伤(爆炸*5)
    data2 = [int(i) for i in [0, 8770, 9659, 10548, 11439, 12329, 13217, 14108, 14998, 15887, 16777, 17667, 18556, 19446, 20336, 21226, 22116, 23005, 23895,
                              24785, 25674, 26564, 27454, 28343, 29233, 30123, 31013, 31902, 32793, 33682, 34571, 35462, 36351, 37240, 38131, 39020, 39910, 40800, 41689, 42579, 43469]]
    hit2 = 5
    # 出血(命中敌人)
    出血data0 = [int(i) for i in [0, 12480, 13746, 15012, 16278, 17544, 18811, 20077, 21343, 22609, 23875, 25142, 26408, 27674, 28940, 30206, 31473, 32740, 34006,
                                35272, 36538, 37805, 39071, 40337, 41603, 42869, 44136, 45402, 46668, 47934, 49200, 50467, 51733, 52999, 54265, 55531, 56798, 58064, 59330, 60596, 61862]]
    出血hit0 = 1
    # 中毒(爆炸*5)
    中毒data0 = [int(i) for i in [0, 2192, 2414, 2637, 2859, 3081, 3304, 3526, 3749, 3972, 4195, 4417, 4638, 4861, 5083, 5306, 5528, 5751, 5973,
                                6195, 6418, 6641, 6864, 7086, 7309, 7530, 7752, 7975, 8197, 8420, 8642, 8864, 9087, 9310, 9533, 9755, 9978, 10200, 10421, 10644, 10866]]
    中毒hit0 = 5
    # 灼伤(爆炸*5)
    灼伤data0 = [int(i) for i in [0, 2192, 2414, 2637, 2859, 3081, 3304, 3526, 3749, 3972, 4195, 4417, 4638, 4861, 5083, 5306, 5528, 5751, 5973,
                                6195, 6418, 6641, 6864, 7086, 7309, 7530, 7752, 7975, 8197, 8420, 8642, 8864, 9087, 9310, 9533, 9755, 9978, 10200, 10421, 10644, 10866]]
    灼伤hit0 = 5
    # 涂毒(命中敌人)
    涂毒data0 = [int(i) for i in [0, 4992, 5498, 6004, 6511, 7018, 7524, 8030, 8537, 9043, 9550, 10057, 10564, 11069, 11576, 12083, 12589, 13096, 13602, 14108,
                                14615, 15122, 15628, 16134, 16641, 17147, 17654, 18161, 18666, 19173, 19681, 20186, 20693, 21199, 21705, 22213, 22719, 23226, 23731, 24238, 24746]]
    涂毒hit0 = 1
    # 涂毒(地面冲击波)
    涂毒data1 = [int(i) for i in [0, 4453, 4906, 5358, 5809, 6263, 6714, 7165, 7617, 8069, 8522, 8973, 9424, 9877, 10329, 10781, 11232, 11684, 12137, 12588,
                                13040, 13492, 13944, 14396, 14847, 15300, 15752, 16203, 16655, 17107, 17560, 18011, 18463, 18915, 19366, 19819, 20271, 20722, 21174, 21626, 22079]]
    涂毒hit1 = 0
    # 涂毒(爆炸*5)
    涂毒data2 = [int(i) for i in [0, 1314, 1448, 1582, 1715, 1849, 1982, 2116, 2249, 2383, 2515, 2650, 2782, 2916, 3050, 3183, 3317, 3450, 3584,
                                3716, 3851, 3983, 4118, 4251, 4384, 4518, 4651, 4785, 4918, 5052, 5184, 5319, 5452, 5586, 5719, 5852, 5986, 6119, 6253, 6385, 6520]]
    涂毒hit2 = 5
    CD = 60.0

    MP = [960, 7200]
    无色消耗 = 7

    形态 = ["直接命中", "地面"]

    def 形态变更(self, 形态, char: Character):
        if 形态 == '' and len(self.形态) > 0:
            形态 = self.形态[0]
        if 形态 == "直接命中":
            self.hit0 = 1
            self.hit1 = 0
            self.hit2 = 5
            self.出血hit0 = 1
            self.中毒hit0 = 5
            self.灼伤hit0 = 5
            self.涂毒hit0 = 1
            self.涂毒hit1 = 0
            self.涂毒hit2 = 5
        elif 形态 == "地面":
            self.hit0 = 0
            self.hit1 = 1
            self.hit2 = 5
            self.出血hit0 = 0
            self.中毒hit0 = 5
            self.灼伤hit0 = 5
            self.涂毒hit0 = 0
            self.涂毒hit1 = 1
            self.涂毒hit2 = 5


class 技能24(被动技能):
    名称 = '身化万毒'
    所在等级 = 95
    等级上限 = 50
    学习间隔 = 3
    等级精通 = 40

    def 加成倍率(self, 武器类型):
        if self.等级 == 0:
            return 1.0
        else:
            return round(1.18 + 0.02 * self.等级, 5)


class 技能25(主动技能):
    名称 = '万毒噬心诀：毒龙吞天'
    所在等级 = 100
    等级上限 = 50
    学习间隔 = 5
    等级精通 = 40

    # 中毒(毒气)
    中毒data0 = [int(i) for i in [0, 27955, 34439, 40921, 47404, 53887, 60369, 66851, 73334, 79817, 86299, 92782, 99266, 105747, 112230, 118713, 125195, 131678, 138161, 144642,
                                151125, 157609, 164091, 170574, 177057, 183539, 190021, 196504, 202986, 209469, 215952, 222434, 228918, 235401, 241882, 248365, 254848, 261330, 267813, 274296, 280777]]
    中毒hit0 = 1
    # 直伤(解除束缚)
    data0 = [int(i) for i in [0, 9318, 11479, 13640, 15800, 17962, 20122, 22284, 24444, 26605, 28767, 30927, 33087, 35248, 37410, 39571, 41731, 43892, 46054,
                              48214, 50374, 52536, 54696, 56858, 59019, 61179, 63340, 65501, 67662, 69823, 71983, 74143, 76306, 78466, 80626, 82788, 84949, 87110, 89271, 91431, 93592]]
    hit0 = 1
    # 直伤2(膝踢)
    data1 = [int(i) for i in [0, 37274, 45917, 54561, 63205, 71849, 80492, 89136, 97779, 106423, 115065, 123710, 132353, 140997, 149640, 158284, 166927, 175571, 184215, 192857,
                              201501, 210144, 218788, 227431, 236075, 244718, 253363, 262006, 270650, 279292, 287935, 296579, 305222, 313867, 322510, 331154, 339797, 348441, 357083, 365727, 374371]]
    hit1 = 1
    # 直伤3(下劈)
    data2 = [int(i) for i in [0, 55912, 68877, 81842, 94808, 107773, 120739, 133703, 146668, 159635, 172600, 185564, 198530, 211495, 224460, 237426, 250391, 263356, 276322, 289287,
                              302252, 315217, 328182, 341147, 354114, 367078, 380043, 393009, 405973, 418939, 431905, 444870, 457834, 470800, 483766, 496730, 509696, 522661, 535628, 548592, 561557]]
    hit2 = 1
    # 直伤4(毒蛇群)
    data3 = [int(i) for i in [0, 11647, 14348, 17051, 19751, 22452, 25152, 27855, 30556, 33256, 35958, 38659, 41360, 44061, 46762, 49463, 52164, 54865, 57567, 60267,
                              62968, 65671, 68371, 71072, 73772, 76474, 79176, 81876, 84578, 87278, 89979, 92680, 95382, 98083, 100783, 103485, 106187, 108887, 111588, 114290, 116990]]
    hit3 = 8
    # 直伤5(最后一击)
    data4 = [int(i) for i in [0, 149100, 183674, 218248, 252822, 287396, 321970, 356543, 391118, 425692, 460266, 494840, 529414, 563988, 598563, 633135, 667710, 702284, 736858, 771432,
                              806006, 840581, 875153, 909728, 944302, 978876, 1013451, 1048024, 1082599, 1117171, 1151746, 1186319, 1220894, 1255469, 1290042, 1324617, 1359190, 1393764, 1428337, 1462912, 1497487]]
    hit4 = 1
    # 涂毒1(膝踢)
    涂毒data0 = [int(i) for i in [0, 5591, 6888, 8183, 9481, 10776, 12073, 13370, 14666, 15963, 17260, 18556, 19852, 21150, 22445, 23742, 25039, 26335, 27631,
                                28928, 30225, 31520, 32818, 34115, 35410, 36708, 38004, 39300, 40597, 41893, 43190, 44487, 45783, 47079, 48377, 49672, 50969, 52266, 53562, 54859, 56155]]
    涂毒hit0 = 1
    # 涂毒2(下劈)
    涂毒data1 = [int(i) for i in [0, 7455, 9182, 10912, 12640, 14370, 16098, 17827, 19555, 21284, 23013, 24741, 26470, 28199, 29928, 31657, 33384, 35114, 36842,
                                38572, 40299, 42029, 43757, 45486, 47215, 48942, 50672, 52401, 54130, 55857, 57586, 59316, 61044, 62774, 64501, 66229, 67959, 69688, 71416, 73144, 74874]]
    涂毒hit1 = 1
    # 涂毒3(毒蛇群)
    涂毒data2 = [int(i) for i in [0, 1164, 1434, 1705, 1975, 2244, 2515, 2784, 3055, 3324, 3596, 3865, 4135, 4405, 4675, 4947, 5216, 5487, 5756,
                                6026, 6296, 6566, 6837, 7107, 7376, 7647, 7916, 8187, 8456, 8728, 8997, 9267, 9538, 9807, 10079, 10348, 10619, 10888, 11158, 11428, 11698]]
    涂毒hit2 = 8
    # 涂毒4(最后一击)
    涂毒data3 = [int(i) for i in [0, 14910, 18366, 21825, 25283, 28738, 32197, 35653, 39111, 42568, 46026, 49483, 52940, 56398, 59855, 63313, 66770, 70228, 73685, 77142,
                                80599, 84057, 87515, 90972, 94430, 97887, 101344, 104801, 108259, 111716, 115174, 118632, 122089, 125546, 129003, 132461, 135918, 139376, 142833, 146291, 149748]]
    涂毒hit3 = 1
    CD = 290.0

    MP = [4025, 8055]
    无色消耗 = 15


class classChange(Character):
    def __init__(self):
        self.实际名称 = 'brawler_female'
        self.名称 = '归元·街霸'
        self.角色 = '格斗家(女)'
        self.职业 = '街霸'
        # 用来筛CP武器的
        self.转职 = '街霸(女)'
        self.武器选项 = ['爪']
        self.输出类型选项 = ['魔法百分比', '物理百分比']
        self.防具精通属性 = ['力量', '智力']
        self.类型 = '魔法百分比'
        self.武器类型 = '爪'
        self.防具类型 = '重甲'
        技能列表 = []
        技能序号 = {}
        i = 0
        while i >= 0:
            try:
                tem = eval('技能'+str(i)+'()')
                tem.基础等级计算()
                技能序号[tem.名称] = i
                技能列表.append(tem)
                i += 1
            except:
                i = -1
        self.技能栏 = 技能列表
        self.技能序号 = 技能序号
        self.buff = 9.5

        super().__init__()

    def 职业特殊计算(self):
        # 涂毒计算相关
        for i in self.技能栏:
            if i.是否主动 == 1:
                i.涂毒倍率 *= (self.buff - 1)
        self.buff = 1.0
        # 二觉解放等级绑定
        self.get_skill_by_name(
            '禁技：万毒蛇窟').等级 = self.get_skill_by_name('万毒噬心诀').等级

        # 双重投掷
        等级 = self.get_skill_by_name('双重投掷').等级
        self.get_skill_by_name('抛沙').双重投掷(等级)
        self.get_skill_by_name('街头风暴').双重投掷(等级)

    def set_skill_info(self, info, rune_except=[], clothes_pants=[]):
        super().set_skill_info(info, clothes_pants=['远古记忆'])

    def 站街力量(self):
        return max(super().站街力量(), super().站街智力())

    def 站街智力(self):
        return self.站街力量()

    def 面板力量(self):
        return max(super().面板力量(), super().面板智力())

    def 面板智力(self):
        return self.面板力量()
